package com.ktjy.dao;

import com.ktjy.dao.impl.IntermediaryInvocationHandler;

import java.lang.reflect.Proxy;
@SuppressWarnings("All")
public class IntermediaryJdkPeoxyFactory {
    public static <T> T create(Object target){
        IntermediaryInvocationHandler handler=new IntermediaryInvocationHandler();
        handler.setTarget(target);
        return (T) Proxy.newProxyInstance( //创建代理对象
                target.getClass().getClassLoader(), //确保代理类和目标类在同一个类加载器环境中
                target.getClass().getInterfaces(),  //获取目标对象实现的所有接口
                 handler); //当调用代理对象的方法时，这些调用会被转发到该 handler 的 invoke() 方法
    }
}